String constraints with concatenation and transducers solved efficiently
نویسندگان
چکیده
منابع مشابه
Modeling Imperative String Operations with Transducers
We present a domain-specific imperative language, Bek, that directly models low-level string manipulation code featuring boolean state, search operations, and substring substitutions. We show constructively that Bek is reversible through a semantics-preserving translation to symbolic finite state transducers, a novel representation for transducers that annotates transitions with logical formula...
متن کاملAperiodic String Transducers
Regular string-to-string functions enjoy a nice triple characterization through deterministic two-way transducers (2DFT), streaming string transducers (SST) and MSO definable functions. This result has recently been lifted to FO definable functions, with equivalent representations by means of aperiodic 2DFT and aperiodic 1-bounded SST, extending a well-known result on regular languages. In this...
متن کاملNondeterministic Streaming String Transducers
We introduce nondeterministic streaming string transducers (NSSTs) { a new computational model that can implement MSO-definable relations between strings. An NSST makes a single left-to-right pass on the input string and uses a finite set of string variables to compute the output. In each step, it reads one input symbol, and updates its string variables in parallel with a copyless assignment.We...
متن کاملString Concatenation Optimization on Java Bytecode
String concatenation via the “+” operator is one of the most convenient things to do in Java, and also one of the most expensive, in terms of memory and performance. In this paper, we present a comprehensive approach to reduce the overhead of consuming string concatenation operations by implicitly transforming the Java bytecode. The transformation is based on the results of the liveness analysi...
متن کاملExpressiveness of streaming string transducers
Streaming string transducers [1] define (partial) functions from input strings to output strings. A streaming string transducer makes a single pass through the input string and uses a finite set of variables that range over strings from the output alphabet. At every step, the transducer processes an input symbol, and updates all the variables in parallel using assignments whose right-hand-sides...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
ژورنال
عنوان ژورنال: Proceedings of the ACM on Programming Languages
سال: 2018
ISSN: 2475-1421
DOI: 10.1145/3158092